package Common;

/**
 *
 * @author Sara Tily
 */

import java.io.File;
import javax.swing.ImageIcon;

/* Utils.java is used by FileChooserDemo2.java. */
public class Utils {
    public final static String jpeg = "jpeg";
    public final static String jpg = "jpg";
    public final static String gif = "gif";
    public final static String tiff = "tiff";
    public final static String tif = "tif";
    public final static String png = "png";

	/**
	 * @param f the file to get the extension of
	 * @return the extension of a file or null if f has none
	 */
    public static String getExtension(File f) {
        String ext = null;
        String s = f.getName();
        int i = s.lastIndexOf('.');

        if (i > 0 &&  i < s.length() - 1) {
            ext = s.substring(i+1).toLowerCase();
        }
        return ext;
    }

	/**
	 * Get the suffix of a file
	 * e.g., if a file has name Image1.out.jpg 
	 * the suffix of the file is .out.jpg
	 * 
	 * @param f the file to get the suffix of
	 * @return the suffix of the file or null if it has none
	 */
	public static String getFileSuffix(File f) {
		String suffix = null;
		String filename = f.getName();
		int i = filename.indexOf('.');
		
		if (i > 0 && i < filename.length() - 1) {
			suffix = filename.substring(i+1).toLowerCase();
		}
		
		return suffix;
	}

    /** Returns an ImageIcon, or null if the path was invalid. */
    protected static ImageIcon createImageIcon(String path) {
        java.net.URL imgURL = Utils.class.getResource(path);
        if (imgURL != null) {
            return new ImageIcon(imgURL);
        } else {
            System.err.println("Couldn't find file: " + path);
            return null;
        }
    }
}
